package mockito.ftp;

import static java.lang.System.out;

import org.apache.commons.net.ftp.FTPClient;

/**
 * 被测试对象：ftpclient连接不上时，是否打印日志信息。
 * 
 * @author Beanstao@gmail.com 2013年11月18日
 */
public class FTPFileTransfer
{
	/**
	 * 为了测试当ftp链接不上时，是否真的会记log，我们必须mock一个假的FTPClient对象，<br>
	 * 用该对象传递/覆盖掉真实的FTPClient对象ftp，并强制让这个假对象返回"无法连接",然后看是否会记log.
	 */
	private FTPClient ftpClient;

	public FTPClient getFtpClient()
	{
		return ftpClient;
	}

	public void setFtpClient(final FTPClient ftp)
	{
		ftpClient = ftp;
	}

	public boolean isFTPConnected()
	{
		if (!ftpClient.isConnected())
		{
			out.println("Disconnected from FTP.");
			return false;
		}
		else
		{
			out.println("connected from FTP.");
			return true;
		}
	}
}
